【新機能】暗号化されたEBSスナップショットをクロスアカウントでコピーする
こんにちは、せーのです。今日はEBSのちょっとうれしい新機能のご紹介です。
スナップショットを共有して開発を便利に
昨今では開発環境、ステージング、本番環境とアカウントを分けることも多くなってきました。その際に開発環境でのプログラムや設定データをそのまま移行する、または本番環境で何か障害が起きた時に設定データをそのままコピーして開発環境で確認する、という場合にスナップショットのコピーは大変便利です。
今までは暗号化されていないEBSスナップショットはクロスアカウントでコピーすることができていたのですが、今回の機能追加によってついに暗号化されたEBSスナップショットもクロスアカウントでコピーすることが出来るようになりました。
やってみた
それでは実際にやってみましょう。 まずは暗号化する際に必要な暗号化キーをIAMから作ります。
作成する時はリージョンに気をつけましょう。
名前をいい感じにつけて
権限をつけて完成です。とりあえず自分のみ操作可能としました。実運用時はグループ等につけるといいかと思います。
次に暗号化EBSを作ります。マネージメントコンソールのEC2から「ボリューム」をクリックしEBSを新規に作成します。ポイントはDefaultのキーは使わず、必ず先程作ったカスタムキーを使うことです。
次に暗号化に使ったKeyをコピー先のアカウントでも参照できるように共有設定をします。IAMより先程作ったKeyを選択して詳細画面より下にスクロールしたところにある「キーユーザー」から外部アカウントの追加を使ってコピー先のアカウントを登録します。
次に出来上がったスナップショットをコピー先のアカウントに共有します。権限の変更から
[プライベート]でコピー先のアカウントにのみ表示されるように設定します。
ここで暗号化スナップショットのコピーに必要な権限をまとめます。コピーに必要な権限は
- コピー元: DescribeKey, ReEncypt
- コピー先: CreateGrant, Encrypt, Decrypt, DescribeKey, CopySnapshot
です。これでコピー元の設定は完了です。次にコピー先のアカウントから実際にコピーしてみましょう。スナップショットから[private]を選択すると、コピー元で設定したスナップショットが見えていると思います。
あとはこれをコピーするだけです。Keyはなんでもいいです。
コピーが完了しました。バッチリです!
まとめ
いかがでしたでしょうか。コピーやクロスアカウントの設定は今までとほぼ変わりがないのでスッと入ってきたかと思います。これでますます便利になりましたね。